10 .TAB(1,4;IN HYPRA-ASS: .LI 1,4 20 .STOP$C000;IN HYPRA-ASS: .BA $C000 30 ;************************************* 40 ; VERSCHACHTELTE SCHLEIFEN ANWENDUNG 50 ; ALLGEMEINER BILDSCHIRMRAHMEN 60 ;************************************* 70 ; 80 ;LAGERPLATZ FUER DIE ZEICHEN: (HPYRA-ASS JEWEILS: .EQ CODE1 = $1B USW.) 90 .REMCODE1=$1B;ZEICHEN (null) = 4F 100 .REMCODE2=$1C;ZEICHEN USR = 77 110 .REMCODE3=$1D;ZEICHEN (null) = 50 120 .REMCODE4=$1E;ZEICHEN FN = 74 130 .REMCODE5=$1F;ZEICHEN THEN = 6A 140 .REMCODE6=$20;ZEICHEN (null) = 4C 150 .REMCODE7=$21;ZEICHEN AND = 6F 160 .REMCODE8=$22;ZEICHEN SQR = 7A 170 ;VEKTOREN FUER BILDCHIRM- UND FARB-RAM: 180 .REMSCREEN=$FB;BILDSCHIRMSTART 190 .REMCOLOR=$FD;FARBRAMSTART 200 ;ZAEHLER: 210 .REMHORIZ=$23;ZAEHLER FUER HORIZONTALE 220 .REMVERT=$24;ZAEHLER FUER VERTIKALE 230 ;DER FARBCODE WIRD NUR IM X-REGISTER GESPEICHERT 240 ; 250 ;DEFINITION EINES MAKRO: AKTUELL 260 ;IN HYPRA-ASS STATTDESSEN: .MA AKTUELL(SCREEN,COLOR) 270 .VERIFYAKTUELL(SCREEN,COLOR) 280 SPC( 290 CONT 300 DIMSCREEN 310 NEXTSCREEN 320 FORSCREEN+1 330 DIM#$00 340 NEXTSCREEN+1 350 SPC( 360 CONT 370 DIMCOLOR 380 NEXTCOLOR 390 FORCOLOR+1 400 DIM#$00 410 NEXTCOLOR+1 420 INPUT##$00 430 .PRINT#;IN HYPRA-ASS: .RT 440 ; 450 ;NUN GEHTS LOS: 460 ; 470 ;-------------- INITIALISIERUNG ------------ 480 ; 490 DATA#$02;FARBCODE INS X-REGISTER 500 FOR#$4F;ALLE ZEICHEN IN DIE SPEICHER PACKEN 510 NEXTCODE1 520 FOR#$77 530 NEXTCODE2 540 FOR#$50 550 NEXTCODE3 560 FOR#$74 570 NEXTCODE4 580 FOR#$6A 590 NEXTCODE5 600 FOR#$4C 610 NEXTCODE6 620 FOR#$6F 630 NEXTCODE7 640 FOR#$7A 650 NEXTCODE8 660 FOR#$00;LSB BILDSCHIRMSTART 670 NEXTSCREEN 680 FOR#$04;MSB BILDSCHIRMSTART 690 NEXTSCREEN+1 700 FOR#$00;LSB FARBRAMSTART 710 NEXTCOLOR 720 FOR#$D8;MSB FARBRAMSTART 730 NEXTCOLOR+1 740 FOR#39;STELLENZAHL PRO ZEILE 750 NEXTHORIZ 760 FOR#23;ZEILENZAHL-2 770 NEXTVERT 780 INPUT##$00;ZAEHLER AUF NULL 790 ; 800 ;------------ NUN KOMMEN DIE JOBS: ------------- 810 ;JOB 1: BESCHREIBEN DER OBEREN ZEILE 820 FORCODE1;1.ZEICHEN LINKS OBEN 830 NEXT(SCREEN),Y;EINSCHREIBEN 840 PRINT#;FARBCODE 850 NEXT(COLOR),Y;IN FARBRAMSTELLE SCHREIBEN 860 SYS;ZAEHLER ERHOEHEN 870 MARKE1 FORCODE2;2.ZEICHEN EINLADEN 880 NEXT(SCREEN),Y;EINE KLEINE SCHLEIFE 890 PRINT# 900 NEXT(COLOR),Y;FARBRAM BESCHREIBEN 910 SYS 920 LOADHORIZ;IST Y SCHON > 38 ? 930 INTMARKE1;WENN NICHT, WEITERMACHEN 940 FORCODE3;LETZTES ZEICHEN OBERE ZEILE 950 NEXT(SCREEN),Y;NACH RECHTS OBEN SCHREIBEN 960 PRINT# 970 NEXT(COLOR),Y;WIEDER FARBCODE EINTRAGEN 980 SYS 990 ;DAS WAR DIE ERSTE ZEILE. NUN KOMMEN DIE SEITENLINIEN 1000 ;JOB 2: BESCHREIBEN DER SEITEN 1010 ; 1020 MARKE2 1030 .POKEAKTUELL(SCREEN,COLOR);AUFRUF DES MAKRO 1035 ;IN HYPRA-ASS: ...AKTUELL(SCREEN,COLOR) 1040 ;DAMIT WERDEN DIE VEKTOREN SCREEN UND COLOR AKTUALISIERT 1050 FORCODE4;4.ZEICHEN FUER LINKEN RAND 1060 NEXT(SCREEN),Y;EINTRAGEN 1070 PRINT#;UND DEN FARBCODE 1080 NEXT(COLOR),Y;EBENFALLS 1090 MARKE3 SYS;ZAEHLER SCHNELL HOCHZAEHLEN 1100 LOADHORIZ;IST Y SCHON > 38 ? 1110 INTMARKE3;WENN NICHT, WEITERZAEHLEN 1120 FORCODE5;SONST 5.ZEICHEN FUER RECHTEN RAND 1130 NEXT(SCREEN),Y;EINTRAGEN 1140 PRINT#;UND FARBCODE 1150 NEXT(COLOR),Y;IN FARBRAM 1160 SYS 1170 SAVEVERT;MITZAEHLEN DER ZEILEN 1180 USRMARKE2;NAECHSTE ZEILE, WENN NOCH NICHT NULL 1190 ;ANSONSTEN SIND NUN BEIDE SEITENLINIEN VORHANDEN 1200 ;JOB 3: BESCHREIBEN DER LETZTEN ZEILE 1210 ;DAZU NOCHMAL MAKROAUFRUF ZUM AKTUALISIEREN DER VEKTOREN 1220 .POKEAKTUELL(SCREEN,COLOR);DIES IST DER AUFRUF 1225 ;IN HYPRA-ASS WIEDER: ...AKTUELL(SCREEN,COLOR) 1230 ;NUN KOMMT DER JOB: 1240 FORCODE6;6.ZEICHEN LINKS UNTEN 1250 NEXT(SCREEN),Y;EINSCHREIBEN 1260 PRINT#;WIEDER DEN FARBCODE 1270 NEXT(COLOR),Y;INS FARBRAM SCHREIBEN 1280 SYS;UND DEN ZAEHLER ERHOEHEN 1290 MARKE4 FORCODE7;7.ZEICHEN 1300 NEXT(SCREEN),Y;EINTRAGEN. KLEINE SCHLEIFE 1310 PRINT# 1320 NEXT(COLOR),Y;FARBRAM 1330 SYS 1340 LOADHORIZ;SCHON > 38 ? 1350 INTMARKE4;WENN NICHT, WEITERMACHEN 1360 FORCODE8;SONST LETZTES ZEICHEN 1370 NEXT(SCREEN),Y;NACH RECHTS UNTEN SCHREIBEN 1380 PRINT#;UND AUCH DEN FARBCODE 1390 NEXT(COLOR),Y;INS FARBRAM EINTRAGEN 1400 ; 1410 ;DAMIT IST DIE ARBEIT GETAN 1420 ;--------------- AUSGANG EINFACH DURCH BRK (MONITOR!) --------- 1430 ; 1440 OR 1450 ; 1460 .TO1,4;IN HYPRA-ASS: .SY 1,4